package com.jinmdz.fmis.dao.model.wake;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.jinmdz.fmis.core.annotation.AnDict;
import com.jinmdz.fmis.core.constant.EDictCode;
import com.jinmdz.fmis.dao.model.mourn.MournCeremonyHallItem;

import java.util.Date;

/**
 * 礼厅房间信息
 *
 * @author LiCongLu
 * @date 2020-02-17 16:52
 */
public class WakeMournHallDeadItem extends MournCeremonyHallItem {
    /**
     * 业务主键
     */
    private Integer businessId;

    /**
     * 预约入厅时间
     */
    @JsonFormat(pattern = yyyy_MM_dd_HH_mm)
    private Date appointmentInTime;

    /**
     * 预约出厅时间
     */
    @JsonFormat(pattern = yyyy_MM_dd_HH_mm)
    private Date appointmentOutTime;

    /**
     * 流程状态
     */
    private Integer processStateCode;

    /**
     * 流程状态
     */
    @AnDict(dict = EDictCode.HALL_STATUS, ref = "processStateCode")
    private String processState;

    /**
     * 业务编码
     */
    private String businessCode;

    /**
     * 逝者姓名
     */
    private String deadName;

    /**
     * 家属姓名
     */
    private String memberName;

    /**
     * 在无占用时,后续下一个最近的预约入厅时间
     */
    @JsonFormat(pattern = yyyy_MM_dd_HH_mm)
    private Date nextInTime;

    public Integer getBusinessId() {
        return businessId;
    }

    public WakeMournHallDeadItem setBusinessId(Integer businessId) {
        this.businessId = businessId;
        return this;
    }

    public Date getAppointmentInTime() {
        return appointmentInTime;
    }

    public WakeMournHallDeadItem setAppointmentInTime(Date appointmentInTime) {
        this.appointmentInTime = appointmentInTime;
        return this;
    }

    public Date getAppointmentOutTime() {
        return appointmentOutTime;
    }

    public WakeMournHallDeadItem setAppointmentOutTime(Date appointmentOutTime) {
        this.appointmentOutTime = appointmentOutTime;
        return this;
    }

    public Integer getProcessStateCode() {
        return processStateCode;
    }

    public WakeMournHallDeadItem setProcessStateCode(Integer processStateCode) {
        this.processStateCode = processStateCode;
        return this;
    }

    public String getProcessState() {
        return processState;
    }

    public WakeMournHallDeadItem setProcessState(String processState) {
        this.processState = processState;
        return this;
    }

    public String getBusinessCode() {
        return businessCode;
    }

    public WakeMournHallDeadItem setBusinessCode(String businessCode) {
        this.businessCode = businessCode;
        return this;
    }

    public String getDeadName() {
        return deadName;
    }

    public WakeMournHallDeadItem setDeadName(String deadName) {
        this.deadName = deadName;
        return this;
    }

    public String getMemberName() {
        return memberName;
    }

    public WakeMournHallDeadItem setMemberName(String memberName) {
        this.memberName = memberName;
        return this;
    }

    public Date getNextInTime() {
        return nextInTime;
    }

    public WakeMournHallDeadItem setNextInTime(Date nextInTime) {
        this.nextInTime = nextInTime;
        return this;
    }
}
